home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d8
/
t3script.arc
/
OPUS.SLT
< prev
next >
Wrap
Text File
|
1990-04-14
|
3KB
|
90 lines
/////////////////////////////////////////////////////////////////////////
// OPUS.SLT - by Terry Robertson (October 1988) //
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //
// //
// SCRIPT TO LOG-ON TO AN OPUS SYSTEM including one which uses //
// BINKLEYTERM as a "front-end". //
// //
// Please note that this script expects you to have assigned your //
// FULL NAME to function key F4. The easiest way to do this is by //
// using the FKEY script in this collection. //
// //
// In addition, the script is written so that it will abort if you //
// have not completed the relevant PASSWORD entry in the Dialling //
// Directory. //
// //
// I have assumed that you want to use the linked scripts CONNECT //
// and CAPTURE. If you do not have these or prefer not to use //
// them you should "comment out" the two lines starting "call" //
// by simply putting "//" before the word "call". //
// //
/////////////////////////////////////////////////////////////////////////
str s[32];
str y[] = ";y";
main()
{
int stat;
int t1,
t2,
t3;
int tmark;
alarm(1);
call("connect", 1); // Gives "connect" information by
// calling Connect.slc script
call("capture", 1); // Opens new capture file by calling
// Capture.slc script
if (not _entry_pass) // no pass, so didn't recog. board
{
prints ("Sorry, I don't know the password for this BBS!");
return;
}
t1 = track("Binkley", 1);
t2 = track(" name:", 1);
t3 = track("Password:", 1);
tmark = timer_start(1800); // wait up to 3 minutes for login
// answer any logon questions
while (not time_up(tmark))
{
terminal(); // let Telix process any chars and keys
stat = track_hit(0); // see which (if any) track was hit
if (stat == t1) // Yes, it's a Bink front-end
{
delay(50);
cputs("^["); // Send Escape character
}
else if (stat == t2) // send name
{
keyget(0x3e00, 0, s);
delchrs(s, strlen(s) - 2, strlen(s));
strcat(s, y);
cputs(s);
cputs("^M");
}
else if (stat == t3) // send password
{
cputs(_entry_pass);
cputs("^M");
break; // done with logon
}
}
if (time_up(1))
prints("Logon failed!");
timer_free(tmark); // free timer channel
track_free(0); // and all track channels
}